package huawei_nowcoder;

import java.util.*;

/**
 * @Description: 字符串排序
 * @Date: 2020/4/20
 * @Author: 许群星
 */
public class _25_StringSort {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        while (sc.hasNext()){
            String str=sc.nextLine();
            char[] chars=str.toCharArray();

            //得到所有的字母的序列
            String temp="";
            for (int i = 0; i <chars.length ; i++) {
                if (Character.isLetter(chars[i]))
                    temp+=chars[i];
            }
            //排序
            temp=sort(temp);
            //输出
            int n=0;
            for (int i = 0; i < chars.length; i++) {
                if (!Character.isLetter(chars[i])){
                    System.out.print(chars[i]);
                }else {
                    System.out.print(temp.charAt(n));
                    n++;
                }
            }
            System.out.println();
        }
    }
    //字母排序，按照大小写顺序排序，同一字母按照输入顺序排序
    public static String sort(String str){

        //冒泡排序
        char[] chars=str.toCharArray();
        int n=str.length();
        for (int i = 0; i < n-1; i++) {
            for (int j = 0; j < n-1; j++) {
                char ch1=chars[j];
                char ch2=chars[j+1];
                if (Character.isUpperCase(ch1))
                    ch1=Character.toLowerCase(ch1);
                if (Character.isUpperCase(ch2))
                    ch2=Character.toLowerCase(ch2);
                if (ch1>ch2){
                    char temp=chars[j+1];
                    chars[j+1]=chars[j];
                    chars[j]=temp;
                }
            }
        }
        return String.valueOf(chars);
    }
}
/*
题目描述
编写一个程序，将输入字符串中的字符按如下规则排序。
规则 1 ：英文字母从 A 到 Z 排列，不区分大小写。
如，输入： Type 输出： epTy
规则 2 ：同一个英文字母的大小写同时存在时，按照输入顺序排列。
如，输入： BabA 输出： aABb
规则 3 ：非英文字母的其它字符保持原来的位置。
如，输入： By?e 输出： Be?y
注意有多组测试数据，即输入有多行，每一行单独处理（换行符隔开的表示不同行）
输入描述:
输入字符串
输出描述:
输出字符串
示例1
输入
复制
A Famous Saying: Much Ado About Nothing (2012/8).
输出
复制
A aaAAbc dFgghh: iimM nNn oooos Sttuuuy (2012/8).
 */